/*
 * FaceList.hpp
 *
 *  Created on: Nov 10, 2012
 *      Author: heinstein
 */

#ifndef FACELIST_HPP_
#define FACELIST_HPP_
#define MAX_UNSEEN 10

#include "Face.hpp"

class FaceList {
public:
	FaceList(int uid);
	void putFace(Face face){Faces.push_back(face);}
	std::vector<Face> getFaces(void) {return Faces;}
	void increaseUnSeenCount(void){unSeenCount++;}
	int getUid(void){return uid;}
	void resetUnSeenCount(void){unSeenCount=0;}
	bool unSeenToLong(void){if(unSeenCount > MAX_UNSEEN) return true; else return false;}
	void outOfFrame(void){state = false;}
	virtual ~FaceList();
	bool saveToDisk(void);
private:
	int uid;
	int unSeenCount;
	std::vector<Face> Faces;
	bool state;
	int facesSaved;
	bool isInFrame(void){return state;}
};

#endif /* FACELIST_HPP_ */
